var i2c = require('i2c');

//自己编写一个简单的delay函数
function delay() {
	for (var i=0; i<1000; i++)
	{
		for (var i=0; i<2000; i++)
		{
			//为了让for循环有执行语句，我们这里简单地执行 system.versions 获取软件版本
			system.versions();
		}
	}
}

var eeprom = i2c.open({
  id: 'I2C2'
});

var msgbuf = [11,22,33,44,55];
function eeprom_Test(){
	
	//修改要写入的数据
	msgbuf[0] = msgbuf[0] + 1;
	
	/*
	注意：AT24C02中带有的片内地址寄存器。
	每写入或读出一个数据字节后，该地址寄存器自动加1，
	以实现对下一个存储单元的读写。
	所以，0x4 不是地址，0x4也会被当作数据写入到eeprom的0地址上。
	*/
	eeprom.writeMem(0x4, msgbuf)
	console.log('writeMem is ' + msgbuf);
 
	//需要延迟后再读eeprom数据，否则可能出错
	delay();
	
	/*
	要注意，0x4 也是会被写入0地址的，
	所以msgbuf[0]是写入到1地址，这里我们需要读5个字节
	*/
	var regval = eeprom.read(5);
	console.log('read regval is ' + regval);
	
	delay();
}

//eeprom_Test();

setInterval(eeprom_Test, 1000);

